package com.itheima.waitnotify_demo;

/*
    Object类 :  wait()

    1 线程进入无限等待 : wait()方法
        注意：进入无限等待需要使用锁在同步代码中调用wait方法
 */
public class Test1 {
    public static void main(String[] args) {
        Object lock = new Object();

        new Thread(new Runnable() {
            @Override
            public void run() {
                synchronized (lock) {
                    System.out.println("A线程开始执行...");
                    System.out.println("A线程进入无线等待...");
                    try {
                        lock.wait(); // IllegalMonitorStateException : 非法监视器状态异常 , wait方法必须使用锁对象进行调用!
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    System.out.println("A线程被唤醒...");
                }
            }
        } , "A").start();
    }
}
